//
//  LEEVisitorTableViewController.swift
//  01-weibo
//
//  Created by Captain-Lee on 16/4/7.
//  Copyright © 2016年 Capt-Lee. All rights reserved.
//

import UIKit

class LEEVisitorTableViewController: UITableViewController {

    // 判断用户登陆的标记
    private var userLogin = false
    
    /**
     提问
     1. 应用程序中有几个 visitorView? - 每个控制器各自有各自不同的 访客视图！
     2. 访客视图如果用懒加载会怎样？- 如果使用懒加载，访客视图始终都会被创建出来！
     */
     
    // 访客视图
    var visitorView: LEEVisitorView?
    
    override func loadView() {
        // 根据用户登录情况，决定显示的根视图
        userLogin ? super.loadView() : setupVistorView()
    }
    
    override func viewWillAppear(animated: Bool) {
        super.viewWillAppear(animated)
        
//        print(visitorView)
    }
    
    // 设置访客视图 - 让每一个`小`函数
    private func setupVistorView() {
        // 替换根视图
        visitorView = LEEVisitorView()
        
        view = visitorView
        
        navigationItem.leftBarButtonItem = UIBarButtonItem(title: "注册", style: UIBarButtonItemStyle.Plain, target: self, action: "visitorViewDidRegister")
        navigationItem.rightBarButtonItem = UIBarButtonItem(title: "登录", style: UIBarButtonItemStyle.Plain, target: self, action: "visitorViewDidLogin")
        
        visitorView?.registerButton.addTarget(self, action: "visitorViewDidRegister", forControlEvents: UIControlEvents.TouchUpInside)
        visitorView?.loginButton.addTarget(self, action: "visitorViewDidLogin", forControlEvents: UIControlEvents.TouchUpInside)
    }
    
}

extension LEEVisitorTableViewController {

    func visitorViewDidRegister() {
    
        print("点击了注册")
    }
    func visitorViewDidLogin() {
    
        print("点击了登录")
    }
}




